-- SUMMON_ATTRIB_ADDITION
-- 玩家对召唤兽属性加成

-- @param value 属性数值
-- @param attrib 属性类型
return function(summon, value, attrib)
    local addon = 0;

    -- 所有召唤兽能力提升，基础的%提升不计算额外
    local prop = PropM.combine(ME.user, "enhanced_summon", 1);
    if prop[3] > 0 then
        addon = addon + PropM.apply(prop, value);
    end

    -- 对应系别的召唤兽属性加成
    local style = SummonM.query(summon.classId, "style");
    if type(style) == "number" then
        prop = PropM.combine(ME.user, "style_summon", style);
        if prop[3] > 0 then
            addon = addon + PropM.apply(prop, value);
        end
    end

    -- 指定召唤兽属性加成
    prop = PropM.combine(ME.user, "appoint_summon", summon.classId);
    if prop[3] > 0 then
        addon = addon + PropM.apply(prop, value);
    end

    -- 召唤生物能力提升（皇后、塔楼、主教）
   local summonId = summon.classId;
    prop = PropM.combine(ME.user, "piece_summon", 1);
    if prop[3] > 0 and table.indexOf({ 36, 37, 38, }, summonId) ~= -1 then
        addon = addon + PropM.apply(prop, value);
    end

    -- 召唤生物能力提升（皇后、塔楼、骑士）
    prop = PropM.combine(ME.user, "piece_summon", 2);
    if prop[3] > 0 and table.indexOf({ 36, 37, 39, }, summonId) ~= -1 then
        addon = addon + PropM.apply(prop, value);
    end

    -- 召唤生物能力提升（皇后、塔楼、禁卫军）
    prop = PropM.combine(ME.user, "piece_summon", 3);
    if prop[3] > 0 and table.indexOf({ 36, 37, 40, }, summonId) ~= -1 then
        addon = addon + PropM.apply(prop, value);
    end

    -- 召唤生物能力提升（皇后、主教、骑士）
    prop = PropM.combine(ME.user, "piece_summon", 4);
    if prop[3] > 0 and table.indexOf({ 36, 39, 38, }, summonId) ~= -1 then
        addon = addon + PropM.apply(prop, value);
    end

    -- 召唤生物能力提升（皇后、主教、禁卫军）
    prop = PropM.combine(ME.user, "piece_summon", 5);
    if prop[3] > 0 and table.indexOf({ 36, 40, 38, }, summonId) ~= -1 then
        addon = addon + PropM.apply(prop, value);
    end

    return addon;
end